java j2ee object oriented copy protection .net database content asp software development java software development digital rights management development license distribution databases electronic licensing design drm c++ copyright